home *** CD-ROM | disk | FTP | other *** search
/ PC go! 2018 January / PCgo 01-2018 CD-ROM Germany.iso / nw.pak / Unnamed File 004911.txt < prev    next >
Encoding:
Text File  |  2015-07-29  |  1.0 KB  |  34 lines

  1. // Copyright 2014 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4.  
  5. // Special unload event. We don't use the DOM unload because that slows down
  6. // tab shutdown. On the other hand, onUnload might not always fire, since
  7. // Chrome will terminate renderers on shutdown (SuddenTermination).
  8.  
  9. // Implement a primitive subset of the Event interface as needed, since if this
  10. // was to use the real event object there would be a circular dependency.
  11. var listeners = [];
  12.  
  13. exports.addListener = function(listener) {
  14.   $Array.push(listeners, listener);
  15. };
  16.  
  17. exports.removeListener = function(listener) {
  18.   for (var i = 0; i < listeners.length; ++i) {
  19.     if (listeners[i] == listener) {
  20.       $Array.splice(listeners, i, 1);
  21.       return;
  22.     }
  23.   }
  24. };
  25.  
  26. exports.wasDispatched = false;
  27.  
  28. // dispatch() is called from C++.
  29. exports.dispatch = function() {
  30.   exports.wasDispatched = true;
  31.   for (var i = 0; i < listeners.length; ++i)
  32.     listeners[i]();
  33. };
  34.